[レポート] Best practices to operationalize BI deployments at scale [REPEAT] #BSI303-R #AWSreInvent
コーヒーが好きな emi です。
AWS re:Invent 2024 で chalk talk 「Best practices to operationalize BI deployments at scale [REPEAT](BIの展開を大規模に運用化するためのベストプラクティス)」に参加しました。
このチョークトークでは、QuickSight のスケーラブルな運用方法や自動化のベストプラクティスを詳しく解説されました。CI/CD ツールや API を駆使した効率的なデプロイメントを紹介いただきました。
概要
タイトル:BSI303-R | Best practices to operationalize BI deployments at scale [REPEAT]
Amazon QuickSight のデータセットやダッシュボードなどのアセットの管理を自動化する、エンタープライズグレードの DevOps パイプライン構築のベストプラクティスを探ります。このチョークトークでは、検証済みのアセットを環境全体に展開する戦略、レジリエンスのためのバックアップの作成、および災害復旧のためのアカウントとリージョン全体にわたるコンテンツの複製について、専門家が説明します。 ビジネスインテリジェンス(BI)アセットを展開し、すべてのユーザーが常に利用できるようにする自動化パイプラインの実装方法について学びます。 バックアップ/リストアのための堅牢でスケーラブルなプロセスの展開、環境全体にわたるQuickSightアセットの展開、およびリージョン全体にわたるアセットの複製についての洞察を得ることができます。
スピーカー
Arun Santhosh(Prin WW SSA QuickSight, AWS)
Mayank Agarwal(Senior Product Manager, Technical, Amazon)
Tue, December 3
1:00 PM - 2:00 PM PST
Wynn | Convention Promenade | La Tache 1
Session types: Chalk talk
Topic: Analytics, DevOps & Developer Productivity
Area of interest: Business Intelligence
Level: 300 – Advanced
Services: Amazon QuickSight
レポート
QuickSight のおさらいから始まります。
- QuickSight はダッシュボードやビジュアライゼーションツールとしてだけでなく、ピクセルパーフェクトレポートや埋め込みアナリティクスの提供も可能
- サーバーレスであり、大規模ユーザー数へのスケーラビリティが確保されている
- SPICE エンジンを用いたインメモリデータ処理や、直接クエリ機能の両方をサポート
- assets はデータソース、データセット、分析(Analysis)、ダッシュボード、テンプレート、トピックなどから構成される
- これらは共有フォルダ(Shared Folders)に格納可能で、効率的なアクセス管理が可能
典型的なユースケース
- 単一アカウント環境から、地域ごとの複数アカウント環境、大規模なエンタープライズ展開まで幅広い構成が可能
- データソースや資産を異なるアカウントやリージョン間で移行する必要がある場合、API や CI/CD パイプラインを活用する
自動化とデプロイメントの最適化
- EventBridge を使用して QuickSight イベントをトリガーし、アセットを自動で展開、複製など可能
- プログラム的にデータの作成(Create)、読み取り(Read)、更新(Update)、削除(Delete)を自動化
- Asset Bundles を使用することで、アセットを一括でエクスポート・インポート可能
- フォルダを利用したデプロイメントトリガーの設定や、Lambda 関数によるパイプラインの起動が可能
フォルダ管理
- マイフォルダ(個人用)と共有フォルダ(チーム用)を活用してアクセス権限を効率的に管理
- 共有フォルダは、サブフォルダを使用して部署ごとや目的別に整理が可能
デモのハイライト
コードはプライベートリポジトリのものを使用されていたので後から試すことはできなかったのですが、主に以下のような流れでした。
- CodePipeline の利用
- GitHub における PR の変更が CodePipeline を通じてデプロイメントプロセスに組み込まれる
- Pipeline 内では「Export」 「Review」 「Import」 などのステージが順次実行され、最終的に QuickSight のアセットが更新または追加される
- EventBridge と Lambda の連携
- EventBridge が特定の QuickSight イベント(今回はフォルダ名の変更)を検知し、Lambda 関数を呼び出す
- Lambda 関数は Pipeline を起動し、全プロセスを自動化
このように QuickSight の運用を CI/CD で自動化することで、大規模環境や複数アカウント間での QuickSight アセット管理が簡素化され、運用の信頼性が向上します。
Appendix
QuickSight の Youtube チャンネルなどを紹介いただきました。私はもちろんチャンネル登録しています。
re:Invent 2024 期間中の QuickSight に関するセッションのまとめです。ありがたい。
Expo 内に Q in QuickSight のコーナーがあります。言ってエンジニアの方に話しかけると Q in QuickSight のオリジナルステッカーがもらえるようでした。
おわりに
CI/CD を使うほど大規模な QuickSight アセットの運用をしたことが無いのですが、複数アカウントにわたって大規模なダッシュボード運用をする場合はこのような工夫をすることで運用が楽になるとのことでした。
チョークトークなので会場からもたくさん質問が出ていました。